草庐IT

c++ - MBCS 到 UTF-8 C++

全部标签

基于 C 的 XML 解析器

推荐使用C语言解析TMX文件(基于XML的map)的XML解析器是什么?它们各自的优缺点是什么,因为我希望有一个高效的,因为它将在嵌入式系统上运行。 最佳答案 不久前,我们在嵌入式产品上使用了libxml。它可能适合您。 关于基于C的XML解析器,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5434919/

c# - 在 UTF16 列中存储 UTF8 数据

我将XML存储在SQLServer的XML列中。SQLServer在内部以UTF-16格式存储数据。因此,存储的XML必须采用UTF-16。我的XML是utf-8格式的,它在顶部有这个声明:当我尝试插入带有UTF-8声明的xml时,我收到一个异常,说明有关编码的内容。我可以通过两种方式轻松解决此问题:删除声明或通过将声明更改为:问题我不知道删除或替换声明是否“安全”或正确。我会丢失数据,还是XML会损坏?或者我是否必须将C#中的字符串从utf-8转换为utf-16? 最佳答案 C#将字符串存储在UCS-2中,这是UTF-16标准的旧

ruby 2 : Recognizing decomposed utf8 in XML entities (NFD)

问题问题很简单:我有包含这个值的XML穆勒这似乎是用变音符号表示u的有效XML格式,就像这样。穆勒但是到目前为止,我们尝试过的所有解析器都会生成u¨——两个不同的字符。背景这种形式的unicode(UTF-8)使用两个代码点来表示单个字符;称为NormalizedFormDecomposed或NFD,二进制形式为\303\274。大多数字符也可以表示为单个代码点和实体,包括这种情况。XML还可以包含ü或ü或ü并且在二进制中是\195\188。这称为归一化形式组合。这些中的任何一个都可以正常工作。正确回答问题所以我认为问题是:是否有一个解析器(似乎不是nokogiri)可以检测并规范化为

c# - 如何确保使用 utf-8 文件编码保存 XDocument?

我正在使用以下代码创建一个Xml文件(Serialize()返回的字节数组稍后写入到FileStream):publicbyte[]Serialize(){using(varstream=newMemoryStream()){WriteXmlToStream(stream);stream.Position=0;using(varreader=newStreamReader(stream)){stringresultString=reader.ReadToEnd();returnEncoding.UTF8.GetBytes(resultString);}}}privatevoidWrit

xml - 使用 Cdata 中的 XSLT 1.0 删除 xml 声明(<?xml 版本 ="1.0"编码 ="UTF-8"?>)

我从SharePoint应用程序中得到这样的响应输入<?xmlversion="1.0"encoding="UTF-8"?><CopyIntoItemsResponsexmlns="http://schemas.microsoft.com/sharepoint/soap/"><CopyIntoItemsResult>0</CopyIntoItemsResult><Results><CopyResultErrorCode="Success"DestinationUrl="http://archivelink.dev.test.com/"/></R

c - 在不解析库的情况下用 C 解析 XML 文件

我正在尝试访问XML文件中所有“mslevel”值等于1的标签。然后,生成一个.txt文件,其中包含标签内的数据字符串,包括位,无论是还是不是数据被压缩,而是原始二进制字符串。然后它应该更进一步,对文件中的任何其他标签执行相同的操作。这是针对不允许我使用解析库的项目。我不确定如何在不使用外部库的情况下访问XML文件中的标签,然后提取标签中的数据。我了解有关如何完成任务的高级计划,但不知道我应该使用什么工具。编辑:我突然想到在第一个标checkout现之前文件中还有更多内容。创建第一个mzmlFileBuffer时,它只获取整个文件的第一行“"我不确定为什么。它不会访问整个文件中带有标签

c# - 打开 XML 文件并将其转换为 UTF-8

我正在尝试打开一个xml文件(ansi)并将其转换并保存为UTF-8。这是我的代码:usingSystem;usingSystem.IO;usingSystem.Text;usingSystem.Xml;classTest{publicstaticvoidMain(){stringpath=@"C:\test\test.xml";stringpath_new=@"C:\test\test_new.xml";try{XmlTextReaderreader=newXmlTextReader(path);XmlWriterSettingssettings=newXmlWriterSettin

c - 新 child 的 xml 缩进和换行符

我有一个如下所示的xml文件。我希望使用xmlNewChild()函数和xmlNewProp()函数向节点添加一个名为foo的新子节点。我想生成如下内容。但是,我总是以以下结尾。我知道libxml2默认不支持空格。但是,有没有办法达到我想要的结果?对于新添加的child,我需要在前面获取这些选项卡,在最后获取换行符。如有任何帮助,我们将不胜感激。谢谢! 最佳答案 问题是XML结构实际上是这样的:[TEXT:"\n"][TEXT:"\n"][TEXT:"\n"][TEXT:"\n"][TEXT:"\n"]如果你只是在children的

xml - VBA 使用 UTF-16 输出到文件

我有一个非常复杂的问题,很难正确解释。互联网上对此有很多讨论,但没有定论。非常感谢任何帮助或比我更好的解释。本质上,我只是尝试使用UTF-16和VBA编写XML文件。如果我这样做:sXML=""sXML=sXML&rest_of_xml_documentPrint#iFile,sXML然后我得到一个有效的XML文件。但是,如果我将“encoding=”更改为“utf-16”,我会从我的XML验证器中收到此错误:不支持从当前编码切换到指定编码。谷歌搜索告诉我这意味着xml编码属性与文件使用的实际编码不同,因此我必须通过打开和打印命令创建一个utf-8文档。如果我这样做:WithCreat

java - DOM4J utf-8 编码 Umlaute(Ä,ü,ß) 错误

我正在使用DOM4j来解析和编写始终采用UTF-8格式的XML树。我的XML文件包含德语特殊字符。解析它们不是问题,但是当我将树写入文件时,特殊字符被转换为�字符。我无法更改XML文件的编码,因为它仅限于UTF-8。代码SAXReaderxmlReader=newSAXReader();xmlReader.setEncoding("UTF-8");Documentdoc=xmlReader.read(file);doc.setXMLEncoding("UTF-8");Elementroot=doc.getRootElement();//manipulatedocOutputFormat